package net.csdn.business.discuss.api.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import net.csdn.business.discuss.api.model.dto.NewDiscussVoteRecordDTO;
import net.csdn.business.discuss.api.model.dto.UpdateDiscussVoteRecordDTO;
import net.csdn.business.discuss.api.model.entity.DiscussVoteRecord;
import net.csdn.business.discuss.api.model.query.DiscussVoteRecordQuery;
import net.csdn.business.discuss.api.model.vo.DiscussVoteRecordVO;

import java.util.List;
/**
 * 讨论投票记录Service接口
 * 
 * @author ruoyi
 * @date 2023-07-25
 */
public interface IDiscussVoteRecordService extends IService<DiscussVoteRecord>
{

    /**
     * 分页查询讨论投票记录
     *
     * @param query 讨论投票记录详细信息
     * @return 讨论投票记录
     */
    public IPage<DiscussVoteRecordVO> findPageList(DiscussVoteRecordQuery query);

    /**
     * 根据id查询讨论投票记录详细信息
     * 
     * @param query 查询讨论投票参数
     * @return 讨论投票记录
     */
    public DiscussVoteRecordVO selectDiscussVoteRecord(DiscussVoteRecordQuery query);

    /**
     * 查询讨论投票记录列表
     * 
     * @param query 讨论投票记录
     * @return 讨论投票记录集合
     */
    public List<DiscussVoteRecordVO> selectDiscussVoteRecordList(DiscussVoteRecordQuery query);

    /**
     * 新增讨论投票记录
     * 
     * @param params 讨论投票记录
     * @return 结果
     */
    public Integer insertDiscussVoteRecord(NewDiscussVoteRecordDTO params);

    /**
     * 修改讨论投票记录
     * 
     * @param params 讨论投票记录
     * @return 结果
     */
    public Integer updateDiscussVoteRecord(UpdateDiscussVoteRecordDTO params);

    /**
     * @Author zhangyl
     * @Description 查询用户是否投票
     * @Date 20:52 2023/7/25
     * @Param
     * @return
     **/
    public Boolean selectIsVote(DiscussVoteRecordQuery query);
}
